var runtime.sched
426 uses
runtime (current package)
cgocall.go#L421: hz := sched.profilehz
debug.go#L21: lock(&sched.lock)
debug.go#L23: unlock(&sched.lock)
debug.go#L56: total := sched.totalMutexWaitTime.Load()
debug.go#L58: total += sched.totalRuntimeLockWaitTime.Load()
debugcall.go#L247: lock(&sched.lock)
debugcall.go#L249: unlock(&sched.lock)
metrics.go#L321: sched.stwTotalTimeGC.write(out)
metrics.go#L447: sched.timeToRun.write(out)
metrics.go#L452: sched.stwStoppingTimeGC.write(out)
metrics.go#L457: sched.stwStoppingTimeOther.write(out)
metrics.go#L462: sched.stwTotalTimeGC.write(out)
metrics.go#L467: sched.stwTotalTimeOther.write(out)
mgc.go#L1120: sched.idleTime.Store(0)
mgc.go#L1497: lock(&sched.lock)
mgc.go#L1499: unlock(&sched.lock)
mgc.go#L1810: lock(&sched.sudoglock)
mgc.go#L1812: for sg = sched.sudogcache; sg != nil; sg = sgnext {
mgc.go#L1816: sched.sudogcache = nil
mgc.go#L1817: unlock(&sched.sudoglock)
mgc.go#L1821: lock(&sched.deferlock)
mgc.go#L1825: for d = sched.deferpool; d != nil; d = dlink {
mgc.go#L1829: sched.deferpool = nil
mgc.go#L1830: unlock(&sched.deferlock)
mgclimit.go#L216: sched.idleTime.Add(duration)
mgclimit.go#L477: sched.idleTime.Add(duration)
mgcmark.go#L293: lock(&sched.gFree.lock)
mgcmark.go#L294: list := sched.gFree.stack
mgcmark.go#L295: sched.gFree.stack = gList{}
mgcmark.go#L296: unlock(&sched.gFree.lock)
mgcmark.go#L313: lock(&sched.gFree.lock)
mgcmark.go#L314: sched.gFree.noStack.pushAll(q)
mgcmark.go#L315: unlock(&sched.gFree.lock)
mgcmark.go#L1183: for !(gp.preempt && (preemptible || sched.gcwaiting.Load() || pp.runSafePointFn != 0)) {
mgcmark.go#L1205: for !(gp.preempt && (preemptible || sched.gcwaiting.Load() || pp.runSafePointFn != 0)) {
mstats.go#L461: lock(&sched.sysmonlock)
mstats.go#L501: unlock(&sched.sysmonlock)
mstats.go#L975: s.TotalTime = sched.totaltime + (now-sched.procresizetime)*int64(gomaxprocs)
mstats.go#L976: s.IdleTime += sched.idleTime.Load()
panic.go#L525: if len(pp.deferpool) == 0 && sched.deferpool != nil {
panic.go#L526: lock(&sched.deferlock)
panic.go#L527: for len(pp.deferpool) < cap(pp.deferpool)/2 && sched.deferpool != nil {
panic.go#L528: d := sched.deferpool
panic.go#L529: sched.deferpool = d.link
panic.go#L533: unlock(&sched.deferlock)
panic.go#L584: lock(&sched.deferlock)
panic.go#L585: last.link = sched.deferpool
panic.go#L586: sched.deferpool = first
panic.go#L587: unlock(&sched.deferlock)
proc.go#L373: if !gp.preempt && sched.npidle.Load() > 0 {
proc.go#L462: lock(&sched.sudoglock)
proc.go#L464: for len(pp.sudogcache) < cap(pp.sudogcache)/2 && sched.sudogcache != nil {
proc.go#L465: s := sched.sudogcache
proc.go#L466: sched.sudogcache = s.next
proc.go#L470: unlock(&sched.sudoglock)
proc.go#L528: lock(&sched.sudoglock)
proc.go#L529: last.next = sched.sudogcache
proc.go#L530: sched.sudogcache = first
proc.go#L531: unlock(&sched.sudoglock)
proc.go#L783: lockInit(&sched.lock, lockRankSched)
proc.go#L784: lockInit(&sched.sysmonlock, lockRankSysmon)
proc.go#L785: lockInit(&sched.deferlock, lockRankDefer)
proc.go#L786: lockInit(&sched.sudoglock, lockRankSudog)
proc.go#L809: sched.maxmcount = 10000
proc.go#L856: lock(&sched.lock)
proc.go#L857: sched.lastpoll.Store(nanotime())
proc.go#L865: unlock(&sched.lock)
proc.go#L890: assertLockHeld(&sched.lock)
proc.go#L901: if count > sched.maxmcount {
proc.go#L902: print("runtime: program exceeds ", sched.maxmcount, "-thread limit\n")
proc.go#L912: assertLockHeld(&sched.lock)
proc.go#L914: if sched.mnext+1 < sched.mnext {
proc.go#L917: id := sched.mnext
proc.go#L918: sched.mnext++
proc.go#L932: lock(&sched.lock)
proc.go#L954: unlock(&sched.lock)
proc.go#L999: sched.nmspinning.Add(1)
proc.go#L1000: sched.needspinning.Store(0)
proc.go#L1091: sched.stopwait = freezeStopWait
proc.go#L1092: sched.gcwaiting.Store(true)
proc.go#L1249: sched.totalMutexWaitTime.Add((now - gp.trackingStamp) * gTrackingPeriod)
proc.go#L1271: sched.timeToRun.record(gp.runnableTime)
proc.go#L1551: lock(&sched.lock)
proc.go#L1553: sched.stopwait = gomaxprocs
proc.go#L1554: sched.gcwaiting.Store(true)
proc.go#L1559: sched.stopwait--
proc.go#L1570: sched.stopwait--
proc.go#L1586: sched.stopwait--
proc.go#L1588: wait := sched.stopwait > 0
proc.go#L1589: unlock(&sched.lock)
proc.go#L1595: if notetsleep(&sched.stopnote, 100*1000) {
proc.go#L1596: noteclear(&sched.stopnote)
proc.go#L1606: sched.stwStoppingTimeGC.record(startTime)
proc.go#L1608: sched.stwStoppingTimeOther.record(startTime)
proc.go#L1617: if sched.stopwait != 0 {
proc.go#L1668: lock(&sched.lock)
proc.go#L1676: sched.gcwaiting.Store(false)
proc.go#L1677: if sched.sysmonwait.Load() {
proc.go#L1678: sched.sysmonwait.Store(false)
proc.go#L1679: notewakeup(&sched.sysmonnote)
proc.go#L1681: unlock(&sched.lock)
proc.go#L1708: sched.stwTotalTimeGC.record(totalTime)
proc.go#L1710: sched.stwTotalTimeOther.record(totalTime)
proc.go#L1896: lock(&sched.lock)
proc.go#L1897: sched.nmfreed++
proc.go#L1899: unlock(&sched.lock)
proc.go#L1918: lock(&sched.lock)
proc.go#L1942: mp.freelink = sched.freem
proc.go#L1943: sched.freem = mp
proc.go#L1944: unlock(&sched.lock)
proc.go#L1947: sched.totalRuntimeLockWaitTime.Add(mp.mLockProfile.waitTime.Load())
proc.go#L1956: lock(&sched.lock)
proc.go#L1957: sched.nmfreed++
proc.go#L1959: unlock(&sched.lock)
proc.go#L2029: lock(&sched.lock)
proc.go#L2030: if sched.safePointWait != 0 {
proc.go#L2033: sched.safePointWait = gomaxprocs - 1
proc.go#L2034: sched.safePointFn = fn
proc.go#L2050: for p := sched.pidle.ptr(); p != nil; p = p.link.ptr() {
proc.go#L2053: sched.safePointWait--
proc.go#L2057: wait := sched.safePointWait > 0
proc.go#L2058: unlock(&sched.lock)
proc.go#L2091: if notetsleep(&sched.safePointNote, 100*1000) {
proc.go#L2092: noteclear(&sched.safePointNote)
proc.go#L2098: if sched.safePointWait != 0 {
proc.go#L2107: lock(&sched.lock)
proc.go#L2108: sched.safePointFn = nil
proc.go#L2109: unlock(&sched.lock)
proc.go#L2132: sched.safePointFn(p)
proc.go#L2133: lock(&sched.lock)
proc.go#L2134: sched.safePointWait--
proc.go#L2135: if sched.safePointWait == 0 {
proc.go#L2136: notewakeup(&sched.safePointNote)
proc.go#L2138: unlock(&sched.lock)
proc.go#L2176: if sched.freem != nil {
proc.go#L2177: lock(&sched.lock)
proc.go#L2179: for freem := sched.freem; freem != nil; {
proc.go#L2208: sched.freem = newList
proc.go#L2209: unlock(&sched.lock)
proc.go#L2345: sched.ngsys.Add(-1)
proc.go#L2412: gp.goid = sched.goidgen.Add(1)
proc.go#L2423: sched.ngsys.Add(1)
proc.go#L2480: sched.ngsys.Add(1)
proc.go#L2519: lock(&sched.lock)
proc.go#L2521: unlock(&sched.lock)
proc.go#L2842: lock(&sched.lock)
proc.go#L2843: sched.nmsys++
proc.go#L2845: unlock(&sched.lock)
proc.go#L2883: lock(&sched.lock)
proc.go#L2885: unlock(&sched.lock)
proc.go#L2932: lock(&sched.lock)
proc.go#L2944: unlock(&sched.lock)
proc.go#L2967: unlock(&sched.lock)
proc.go#L2977: lock(&sched.lock)
proc.go#L2985: unlock(&sched.lock)
proc.go#L3014: if !runqempty(pp) || sched.runqsize != 0 {
proc.go#L3030: if sched.nmspinning.Load()+sched.npidle.Load() == 0 && sched.nmspinning.CompareAndSwap(0, 1) { // TODO: fast atomic
proc.go#L3031: sched.needspinning.Store(0)
proc.go#L3035: lock(&sched.lock)
proc.go#L3036: if sched.gcwaiting.Load() {
proc.go#L3039: sched.stopwait--
proc.go#L3040: if sched.stopwait == 0 {
proc.go#L3041: notewakeup(&sched.stopnote)
proc.go#L3043: unlock(&sched.lock)
proc.go#L3047: sched.safePointFn(pp)
proc.go#L3048: sched.safePointWait--
proc.go#L3049: if sched.safePointWait == 0 {
proc.go#L3050: notewakeup(&sched.safePointNote)
proc.go#L3053: if sched.runqsize != 0 {
proc.go#L3054: unlock(&sched.lock)
proc.go#L3060: if sched.npidle.Load() == gomaxprocs-1 && sched.lastpoll.Load() != 0 {
proc.go#L3061: unlock(&sched.lock)
proc.go#L3070: unlock(&sched.lock)
proc.go#L3093: if sched.nmspinning.Load() != 0 || !sched.nmspinning.CompareAndSwap(0, 1) {
proc.go#L3105: lock(&sched.lock)
proc.go#L3108: if sched.nmspinning.Add(-1) < 0 {
proc.go#L3111: unlock(&sched.lock)
proc.go#L3119: unlock(&sched.lock)
proc.go#L3177: if !sched.gcwaiting.Load() {
proc.go#L3184: if sched.nmspinning.Add(-1) < 0 {
proc.go#L3189: lock(&sched.lock)
proc.go#L3192: sched.stopwait--
proc.go#L3193: if sched.stopwait == 0 {
proc.go#L3194: notewakeup(&sched.stopnote)
proc.go#L3196: unlock(&sched.lock)
proc.go#L3232: hz := sched.profilehz
proc.go#L3259: if sched.gcwaiting.Load() {
proc.go#L3299: if pp.schedtick%61 == 0 && sched.runqsize > 0 {
proc.go#L3300: lock(&sched.lock)
proc.go#L3302: unlock(&sched.lock)
proc.go#L3324: if sched.runqsize != 0 {
proc.go#L3325: lock(&sched.lock)
proc.go#L3327: unlock(&sched.lock)
proc.go#L3340: if netpollinited() && netpollAnyWaiters() && sched.lastpoll.Load() != 0 {
proc.go#L3360: if mp.spinning || 2*sched.nmspinning.Load() < gomaxprocs-sched.npidle.Load() {
proc.go#L3433: lock(&sched.lock)
proc.go#L3434: if sched.gcwaiting.Load() || pp.runSafePointFn != 0 {
proc.go#L3435: unlock(&sched.lock)
proc.go#L3438: if sched.runqsize != 0 {
proc.go#L3440: unlock(&sched.lock)
proc.go#L3443: if !mp.spinning && sched.needspinning.Load() == 1 {
proc.go#L3446: unlock(&sched.lock)
proc.go#L3453: unlock(&sched.lock)
proc.go#L3494: if sched.nmspinning.Add(-1) < 0 {
proc.go#L3509: lock(&sched.lock)
proc.go#L3510: if sched.runqsize != 0 {
proc.go#L3517: unlock(&sched.lock)
proc.go#L3523: unlock(&sched.lock)
proc.go#L3559: if netpollinited() && (netpollAnyWaiters() || pollUntil != 0) && sched.lastpoll.Swap(0) != 0 {
proc.go#L3560: sched.pollUntil.Store(pollUntil)
proc.go#L3584: sched.pollUntil.Store(0)
proc.go#L3585: sched.lastpoll.Store(now)
proc.go#L3592: lock(&sched.lock)
proc.go#L3594: unlock(&sched.lock)
proc.go#L3618: pollerPollUntil := sched.pollUntil.Load()
proc.go#L3632: if sched.runqsize != 0 {
proc.go#L3639: if netpollinited() && netpollAnyWaiters() && sched.lastpoll.Load() != 0 {
proc.go#L3665: if sched.gcwaiting.Load() {
proc.go#L3732: lock(&sched.lock)
proc.go#L3736: unlock(&sched.lock)
proc.go#L3739: unlock(&sched.lock)
proc.go#L3799: lock(&sched.lock)
proc.go#L3802: unlock(&sched.lock)
proc.go#L3809: unlock(&sched.lock)
proc.go#L3816: unlock(&sched.lock)
proc.go#L3821: unlock(&sched.lock)
proc.go#L3830: if sched.lastpoll.Load() == 0 {
proc.go#L3835: pollerPollUntil := sched.pollUntil.Load()
proc.go#L3854: nmspinning := sched.nmspinning.Add(-1)
proc.go#L3904: lock(&sched.lock)
proc.go#L3908: unlock(&sched.lock)
proc.go#L3914: unlock(&sched.lock)
proc.go#L3921: lock(&sched.lock)
proc.go#L3923: unlock(&sched.lock)
proc.go#L3928: npidle := int(sched.npidle.Load())
proc.go#L3938: lock(&sched.lock)
proc.go#L3940: unlock(&sched.lock)
proc.go#L4017: if sched.disable.user && !schedEnabled(gp) {
proc.go#L4021: lock(&sched.lock)
proc.go#L4025: unlock(&sched.lock)
proc.go#L4027: sched.disable.runnable.pushBack(gp)
proc.go#L4028: sched.disable.n++
proc.go#L4029: unlock(&sched.lock)
proc.go#L4129: lock(&sched.lock)
proc.go#L4131: unlock(&sched.lock)
proc.go#L4279: sched.ngsys.Add(-1)
proc.go#L4441: if sched.sysmonwait.Load() {
proc.go#L4458: if sched.gcwaiting.Load() {
proc.go#L4490: lock(&sched.lock)
proc.go#L4491: if sched.sysmonwait.Load() {
proc.go#L4492: sched.sysmonwait.Store(false)
proc.go#L4493: notewakeup(&sched.sysmonnote)
proc.go#L4495: unlock(&sched.lock)
proc.go#L4502: lock(&sched.lock)
proc.go#L4504: if sched.stopwait > 0 && atomic.Cas(&pp.status, _Psyscall, _Pgcstop) {
proc.go#L4520: if sched.stopwait--; sched.stopwait == 0 {
proc.go#L4521: notewakeup(&sched.stopnote)
proc.go#L4526: unlock(&sched.lock)
proc.go#L4679: if sched.disable.user && !schedEnabled(gp) {
proc.go#L4706: if sched.stopwait == freezeStopWait {
proc.go#L4726: if sched.pidle != 0 {
proc.go#L4762: lock(&sched.lock)
proc.go#L4764: if pp != nil && sched.sysmonwait.Load() {
proc.go#L4765: sched.sysmonwait.Store(false)
proc.go#L4766: notewakeup(&sched.sysmonnote)
proc.go#L4768: unlock(&sched.lock)
proc.go#L4797: lock(&sched.lock)
proc.go#L4812: } else if sched.sysmonwait.Load() {
proc.go#L4813: sched.sysmonwait.Store(false)
proc.go#L4814: notewakeup(&sched.sysmonnote)
proc.go#L4816: unlock(&sched.lock)
proc.go#L5038: sched.ngsys.Add(1)
proc.go#L5072: pp.goidcache = sched.goidgen.Add(_GoidCacheBatch)
proc.go#L5168: lock(&sched.gFree.lock)
proc.go#L5169: sched.gFree.noStack.pushAll(noStackQ)
proc.go#L5170: sched.gFree.stack.pushAll(stackQ)
proc.go#L5171: sched.gFree.n += inc
proc.go#L5172: unlock(&sched.gFree.lock)
proc.go#L5180: if pp.gFree.empty() && (!sched.gFree.stack.empty() || !sched.gFree.noStack.empty()) {
proc.go#L5181: lock(&sched.gFree.lock)
proc.go#L5185: gp := sched.gFree.stack.pop()
proc.go#L5187: gp = sched.gFree.noStack.pop()
proc.go#L5192: sched.gFree.n--
proc.go#L5196: unlock(&sched.gFree.lock)
proc.go#L5252: lock(&sched.gFree.lock)
proc.go#L5253: sched.gFree.noStack.pushAll(noStackQ)
proc.go#L5254: sched.gFree.stack.pushAll(stackQ)
proc.go#L5255: sched.gFree.n += inc
proc.go#L5256: unlock(&sched.gFree.lock)
proc.go#L5371: n := int32(atomic.Loaduintptr(&allglen)) - sched.gFree.n - sched.ngsys.Load()
proc.go#L5385: return int32(sched.mnext - sched.nmfreed)
proc.go#L5553: lock(&sched.lock)
proc.go#L5554: sched.profilehz = hz
proc.go#L5555: unlock(&sched.lock)
proc.go#L5607: assertLockHeld(&sched.lock)
proc.go#L5685: assertLockHeld(&sched.lock)
proc.go#L5700: if sched.procresizetime != 0 {
proc.go#L5701: sched.totaltime += int64(old) * (now - sched.procresizetime)
proc.go#L5703: sched.procresizetime = now
proc.go#L5912: lock(&sched.lock)
proc.go#L5913: sched.nmidlelocked += v
proc.go#L5917: unlock(&sched.lock)
proc.go#L5924: assertLockHeld(&sched.lock)
proc.go#L5950: run := mcount() - sched.nmidle - sched.nmidlelocked - sched.nmsys
proc.go#L5955: print("runtime: checkdead: nmidle=", sched.nmidle, " nmidlelocked=", sched.nmidlelocked, " mcount=", mcount(), " nmsys=", sched.nmsys, "\n")
proc.go#L5956: unlock(&sched.lock)
proc.go#L5974: unlock(&sched.lock)
proc.go#L5979: unlock(&sched.lock) // unlock so that GODEBUG=scheddetail=1 doesn't hang
proc.go#L5993: unlock(&sched.lock)
proc.go#L6000: unlock(&sched.lock)
proc.go#L6006: sched.nmspinning.Add(1)
proc.go#L6021: unlock(&sched.lock) // unlock so that GODEBUG=scheddetail=1 doesn't hang
proc.go#L6045: lock(&sched.lock)
proc.go#L6046: sched.nmsys++
proc.go#L6048: unlock(&sched.lock)
proc.go#L6081: if debug.schedtrace <= 0 && (sched.gcwaiting.Load() || sched.npidle.Load() == gomaxprocs) {
proc.go#L6082: lock(&sched.lock)
proc.go#L6083: if sched.gcwaiting.Load() || sched.npidle.Load() == gomaxprocs {
proc.go#L6087: sched.sysmonwait.Store(true)
proc.go#L6088: unlock(&sched.lock)
proc.go#L6099: syscallWake = notetsleep(&sched.sysmonnote, sleep)
proc.go#L6103: lock(&sched.lock)
proc.go#L6104: sched.sysmonwait.Store(false)
proc.go#L6105: noteclear(&sched.sysmonnote)
proc.go#L6112: unlock(&sched.lock)
proc.go#L6115: lock(&sched.sysmonlock)
proc.go#L6125: lastpoll := sched.lastpoll.Load()
proc.go#L6127: sched.lastpoll.CompareAndSwap(lastpoll, now)
proc.go#L6187: unlock(&sched.sysmonlock)
proc.go#L6247: if runqempty(pp) && sched.nmspinning.Load()+sched.npidle.Load() > 0 && pd.syscallwhen+10*1000*1000 > now {
proc.go#L6340: lock(&sched.lock)
proc.go#L6341: print("SCHED ", (now-starttime)/1e6, "ms: gomaxprocs=", gomaxprocs, " idleprocs=", sched.npidle.Load(), " threads=", mcount(), " spinningthreads=", sched.nmspinning.Load(), " needspinning=", sched.needspinning.Load(), " idlethreads=", sched.nmidle, " runqueue=", sched.runqsize)
proc.go#L6343: print(" gcwaiting=", sched.gcwaiting.Load(), " nmidlelocked=", sched.nmidlelocked, " stopwait=", sched.stopwait, " sysmonwait=", sched.sysmonwait.Load(), "\n")
proc.go#L6375: unlock(&sched.lock)
proc.go#L6417: unlock(&sched.lock)
proc.go#L6426: lock(&sched.lock)
proc.go#L6427: if sched.disable.user == !enable {
proc.go#L6428: unlock(&sched.lock)
proc.go#L6431: sched.disable.user = !enable
proc.go#L6433: n := sched.disable.n
proc.go#L6434: sched.disable.n = 0
proc.go#L6435: globrunqputbatch(&sched.disable.runnable, n)
proc.go#L6436: unlock(&sched.lock)
proc.go#L6437: for ; n != 0 && sched.npidle.Load() != 0; n-- {
proc.go#L6441: unlock(&sched.lock)
proc.go#L6450: assertLockHeld(&sched.lock)
proc.go#L6452: if sched.disable.user {
proc.go#L6464: assertLockHeld(&sched.lock)
proc.go#L6466: mp.schedlink = sched.midle
proc.go#L6467: sched.midle.set(mp)
proc.go#L6468: sched.nmidle++
proc.go#L6478: assertLockHeld(&sched.lock)
proc.go#L6480: mp := sched.midle.ptr()
proc.go#L6482: sched.midle = mp.schedlink
proc.go#L6483: sched.nmidle--
proc.go#L6494: assertLockHeld(&sched.lock)
proc.go#L6496: sched.runq.pushBack(gp)
proc.go#L6497: sched.runqsize++
proc.go#L6506: assertLockHeld(&sched.lock)
proc.go#L6508: sched.runq.push(gp)
proc.go#L6509: sched.runqsize++
proc.go#L6519: assertLockHeld(&sched.lock)
proc.go#L6521: sched.runq.pushBackAll(*batch)
proc.go#L6522: sched.runqsize += n
proc.go#L6529: assertLockHeld(&sched.lock)
proc.go#L6531: if sched.runqsize == 0 {
proc.go#L6535: n := sched.runqsize/gomaxprocs + 1
proc.go#L6536: if n > sched.runqsize {
proc.go#L6537: n = sched.runqsize
proc.go#L6546: sched.runqsize -= n
proc.go#L6548: gp := sched.runq.pop()
proc.go#L6551: gp1 := sched.runq.pop()
proc.go#L6593: assertLockHeld(&sched.lock)
proc.go#L6605: pp.link = sched.pidle
proc.go#L6606: sched.pidle.set(pp)
proc.go#L6607: sched.npidle.Add(1)
proc.go#L6622: assertLockHeld(&sched.lock)
proc.go#L6624: pp := sched.pidle.ptr()
proc.go#L6632: sched.pidle = pp.link
proc.go#L6633: sched.npidle.Add(-1)
proc.go#L6650: assertLockHeld(&sched.lock)
proc.go#L6657: sched.needspinning.Store(1)
proc.go#L6776: lock(&sched.lock)
proc.go#L6778: unlock(&sched.lock)
proc.go#L6810: lock(&sched.lock)
proc.go#L6812: unlock(&sched.lock)
proc.go#L7063: lock(&sched.lock)
proc.go#L7064: out = int(sched.maxmcount)
proc.go#L7066: sched.maxmcount = 0x7fffffff
proc.go#L7068: sched.maxmcount = int32(in)
proc.go#L7071: unlock(&sched.lock)
proc.go#L7156: if i >= active_spin || ncpu <= 1 || gomaxprocs <= sched.npidle.Load()+sched.nmspinning.Load()+1 {
runtime2.go#L1184: sched schedt
trace.go#L228: lock(&sched.sysmonlock)
trace.go#L305: unlock(&sched.sysmonlock)
trace.go#L490: lock(&sched.lock)
trace.go#L495: for mp := sched.freem; mp != nil; mp = mp.freelink {
trace.go#L499: unlock(&sched.lock)
traceruntime.go#L710: assertLockHeld(&sched.lock)
 |
The pages are generated with Golds v0.7.6. (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |